02. 日常开发中的版本控制

版本控制随处可见

我的工作是处理文档。我一直都在新建文档,并在文档中输入信息(希望是有用的信息!),然后编辑…编辑…编辑!你的工作也是这样吗?可能不是包含文字的文档,但是你可能处理的是某种形式的数据,并且这些数据会逐渐改变。

你可能觉得,在处理文档时,你没有用到版本控制,在某种程度上,你是对的。你在编写文档时,没有经常保留不同的文档版本。但是这并不表明没有不同版本的文档。计算机一直在帮助你记录不同的版本!

不相信我说的话?除了推测你是否表示怀疑的态度,我来证明下我的观点是正确的:

  • 打开你最喜欢的文本编辑器
  • 输入一些内容(不妨输入"version control is dull!")
  • 更改其中一个单词(例如将 "dull" 改为 "life-changing awesome")
  • 现在(到了精彩的部分了!)按下 cmd + z ctrl + z

💥 版本控制起作用啦!(对吧?我说了我没有撒谎)我猜你肯定一直使用撤销命令。反正我是经常用!

实际上,我用到的每个应用都具有撤销功能。你可以将它看做一种版本控制形式,但是却是很简单的形式。我们来看看 Google 文档,了解一种更强大的版本控制形式。

_这门 Git 课程的 Google 文档大纲。_

这门 Git 课程的 Google 文档大纲。

如果你用过 Google 文档的话,有没有注意到顶部的灰色小字,告诉你文档的状态?每当你输入内容时,它都在不断保存文档。当你输入完毕后,它会告诉你文档已保存。

_Google 文档的状态栏。当你正在编辑文档时,状态栏提示“正在保存…”,内容保存后,提示“所有更改都已保存到云端硬盘”。_

Google 文档的状态栏。当你正在编辑文档时,状态栏提示“正在保存…”,内容保存后,提示“所有更改都已保存到云端硬盘”。

真正的问题是,你知道你可以点击这个链接吗?要不要点击看看?在你自己的 Google 文档中试试。

点击该链接将转到“版本历史记录(Revision history)”页面。(看到 Revision 一词了吗?Revision 和 Version
是同义词!表示:版本、修订)

Nd016 WebND Ud123 Gitcourse BETAMOJITO L1 11 Google 文档版本历史记录

版本历史记录并不足够强大

Google 文档的版本历史记录页面非常强大!我经常使用它,有时候输入了一些文字,然后删了,后来又意识到确实还要这些文字。

但是虽然功能很强大,但也并非十全十美。缺少了什么?我能想到的包括:

  • 标记更改的功能

  • 做出为何更改的详细描述的功能

  • 在同一文档的不同版本之间切换的功能

  • 撤消更改 A,编辑 B,然后回到更改 A 并且不影响编辑 B 的功能

版本控制工具 Git 可以实现以上所有功能,甚至更多!!!(猜测你没料到这一点吧!)我跟你提过 Git 非常强大吗?希望提过,因为我们将在下个部分详细了解 Git。